package com.sc.nft.entity.vo.mall;

import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.sc.nft.entity.ApiOrderDirect;
import com.sc.nft.entity.UserCoupons;
import com.sc.nft.entity.dto.ApiOrderDirectDTO;
import com.sc.nft.enums.CouponsTypeEnum;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

@Data
public class AdminOrderDetailsVO {


    @ApiModelProperty("订单状态时间")
    private List<MallOrderStatusVO> statusList;

    @ApiModelProperty("收货人")
    private String userRealName;

    @ApiModelProperty("收货人手机号")
    private String userTel;

    @ApiModelProperty("买家手机号")
    private String buyerUserTel;

    @ApiModelProperty("收货信息")
    private String userAddr;

    @ApiModelProperty("商品列表")
    private List<AdminMallOrderProductDetailsVO> productList;

    @ApiModelProperty("上级用户手机号")
    private String pushStraightIncomeUserTel;

    @ApiModelProperty("上上级用户手机号")
    private String pushBetweenIncomeUserTel;

    @ApiModelProperty("上上级用户手机号")
    private List<OrderExchangeVO> exchangeList;

    @ApiModelProperty("直充订单")
    private ApiOrderDirectDTO apiOrderDirect;

    @ApiModelProperty("活动优惠券ID")
    private Long activityCouponsId;

    @ApiModelProperty("优惠券名称")
    private String couponsTitle;

    @ApiModelProperty(value = "优惠券金额")
    private BigDecimal couponAmount;

    /**
     * CouponsTypeEnum
     */
    @ApiModelProperty(value = "优惠券类型")
    private CouponsTypeEnum couponsType;
    /**
     * 消费金额
     */
    @ApiModelProperty(value = "满减条件金额")
    private BigDecimal fullMoney;

    /**
     * 优惠券金额
     */
    @ApiModelProperty(value = "满减金额")
    private BigDecimal money;
    /**
     * 优惠券折扣
     */
    @ApiModelProperty(value = "优惠折扣")
    private BigDecimal proportion;
    /**
     * 实付金额
     */
    @ApiModelProperty("订单金额")
    private BigDecimal realPrice;

    /**
     * 创建时间
     */
    @ApiModelProperty("创建时间")
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @TableField(fill = FieldFill.INSERT)
    protected Date createTime;

}
